INFORMATICA (1 Unità)

Prof. Roberto Battiti

Anno Accademico, 2001/2002

Descrizione

Il corso ha lo scopo di creare una conoscenza operativa delle tecniche di programmazione imperativa e strutturata, e di programmazione orientata agli oggetti, usando il linguaggio C++.

INTRODUZIONE E MOTIVAZIONI

I concetti di algoritmo, programma ed esecutore meccanico (calcolatore). Esempi di algoritmi espressi in "italiano" (ordinamento, ricerca, numeri primi, massimo comun divisore), motivazioni e naturalezza della programmazione.

STRUTTURE DI DATI ELEMENTARI e PROGRAMMAZIONE ORIENTATA AGLI OGGETTI

Principali tipi di dato (numeri interi reali e complessi, vettori, matrici, liste, pile e code). Tipo di dato astratto e     realizzazione tramite linguaggi orientati agli oggetti.

INTRODUZIONE AL PROGETTO E ALL' ANALISI DI ALGORITMI

Progetto tramite raffinamenti successivi a partire da specifiche. Complessita' computazionale nel caso pessimo e nel caso     medio. Ordini di grandezza. Algoritmi di ordinamento.  

IL LINGUAGGIO C

 Puntatori ed array, stringhe, array multi-dimensionali. Allocazione dinamica, tipi strutturati, input ed output da file.

IL LINGUAGGIO C++

Classi e metodi, ereditarieta', riuso del software.

Realizzazione in C e C++ di alcuni algoritmi e strutture dati fondamentali in Informatica.

Realizzazione in C e C++ di applicazioni significative in Matematica

Testi consigliati

A.A. Bertossi, Strutture, Algoritmi, Complessita', ECIG, Genova, 1990.

Un buon manuale di C/C++ (ne esistono molti, consigli dettagliati verranno presentati a lezione).